RationalExpressionQ
RationalExpressionQ[expr,x] gives True if expr is structurally a rational expression in x, and False otherwise.
RationalExpressionQ[expr,{x,y,…}] gives True if expr is structurally a rational expression in x,y,…, and False otherwise.
RationalExpressionQ[expr,{x,y,…},test] gives True if expr is structurally a rational expression in x,y,… with coefficients satisfying test, and False otherwise.
Please visit the official Wolfram Language Reference for more details and examples on core symbols.